Repository navigation
feat(hyrox): live double-tap bursts close HYROX rounds - #13
Draft
BucciMobile wants to merge 7 commits into
Draft
BucciMobile wants to merge 7 commits into
BucciMobile wants to merge 7 commits into
Conversation
New HyroxLiveTapHandler (lib/state/hyrox_live_taps.dart), fed from AppState._onLiveEvent on the foreground/live path only (never the headless drain). Same burst rule as the offline reconciler: >=3 double-taps within 6 s anchored on the FIRST tap (chained 0/6/12 s does not count), per-station minimum floors, boundaries stamped 'gesture'. A burst starts an armed race, closes the open round, or finishes the final one; activeSession is re-read per accepted burst so relaunch/reconciler state is picked up. Finalized and discarded sessions are never touched; rejections are logged, never thrown. Co-authored-by: BucciMobile <BucciMobile@users.noreply.github.com>
Co-authored-by: BucciMobile <BucciMobile@users.noreply.github.com>
Co-authored-by: BucciMobile <BucciMobile@users.noreply.github.com>
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the
|
Co-authored-by: BucciMobile <BucciMobile@users.noreply.github.com>
Co-authored-by: BucciMobile <BucciMobile@users.noreply.github.com>
Co-authored-by: BucciMobile <BucciMobile@users.noreply.github.com>
Owner
Author
|
@coderabbitai full review |
Action not completed
|
Co-authored-by: BucciMobile <BucciMobile@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Live tracking while the phone is connected: double-tap bursts on the band close HYROX rounds in real time (follow-up to OpenStrap#663 storage + the reconciler-caller PR).
lib/state/hyrox_live_taps.dart:LiveBurstDetector(pure, unit-tested) +HyroxLiveTapHandler. Same burst rule as the offline reconciler: >=3 double-taps (event 14) within 6 s anchored on the FIRST tap — a chained 0/6/12 s sequence does NOT count — plus per-station minimum-duration floors.AppState._onLiveEvent(foreground/live path only; the headless drain never reaches it, same guard as the gesture dispatcher). A burst starts an armed race (startSegment), closes the open round (transitionSegment), or finishes the final round (finishSegment); all stampedboundarySource: 'gesture'.test/hyrox_live_taps_test.dart— pure burst detector (anchoring, chained rejection, gate), full race start->transitions->finish against sqflite_ffi, floor rejection, non-tap/zero-ts ignored, finalized untouched.Base:
feat/hyrox-reconciler-caller(stacked). No UI yet, no haptics (deferred by request). CI runs analyze + tests; no Flutter SDK in the dev sandbox.